package cn.bdqn.model.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class SysUserinfoExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public SysUserinfoExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<java.sql.Date>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andUserIdIsNull() {
            addCriterion("user_id is null");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNotNull() {
            addCriterion("user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserIdEqualTo(Integer value) {
            addCriterion("user_id =", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotEqualTo(Integer value) {
            addCriterion("user_id <>", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThan(Integer value) {
            addCriterion("user_id >", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("user_id >=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThan(Integer value) {
            addCriterion("user_id <", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("user_id <=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdIn(List<Integer> values) {
            addCriterion("user_id in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotIn(List<Integer> values) {
            addCriterion("user_id not in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdBetween(Integer value1, Integer value2) {
            addCriterion("user_id between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("user_id not between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andUserAccountIsNull() {
            addCriterion("user_account is null");
            return (Criteria) this;
        }

        public Criteria andUserAccountIsNotNull() {
            addCriterion("user_account is not null");
            return (Criteria) this;
        }

        public Criteria andUserAccountEqualTo(String value) {
            addCriterion("user_account =", value, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountNotEqualTo(String value) {
            addCriterion("user_account <>", value, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountGreaterThan(String value) {
            addCriterion("user_account >", value, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountGreaterThanOrEqualTo(String value) {
            addCriterion("user_account >=", value, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountLessThan(String value) {
            addCriterion("user_account <", value, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountLessThanOrEqualTo(String value) {
            addCriterion("user_account <=", value, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountLike(String value) {
            addCriterion("user_account like", value, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountNotLike(String value) {
            addCriterion("user_account not like", value, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountIn(List<String> values) {
            addCriterion("user_account in", values, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountNotIn(List<String> values) {
            addCriterion("user_account not in", values, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountBetween(String value1, String value2) {
            addCriterion("user_account between", value1, value2, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserAccountNotBetween(String value1, String value2) {
            addCriterion("user_account not between", value1, value2, "userAccount");
            return (Criteria) this;
        }

        public Criteria andUserPasswordIsNull() {
            addCriterion("user_password is null");
            return (Criteria) this;
        }

        public Criteria andUserPasswordIsNotNull() {
            addCriterion("user_password is not null");
            return (Criteria) this;
        }

        public Criteria andUserPasswordEqualTo(Integer value) {
            addCriterion("user_password =", value, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordNotEqualTo(Integer value) {
            addCriterion("user_password <>", value, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordGreaterThan(Integer value) {
            addCriterion("user_password >", value, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordGreaterThanOrEqualTo(Integer value) {
            addCriterion("user_password >=", value, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordLessThan(Integer value) {
            addCriterion("user_password <", value, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordLessThanOrEqualTo(Integer value) {
            addCriterion("user_password <=", value, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordIn(List<Integer> values) {
            addCriterion("user_password in", values, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordNotIn(List<Integer> values) {
            addCriterion("user_password not in", values, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordBetween(Integer value1, Integer value2) {
            addCriterion("user_password between", value1, value2, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserPasswordNotBetween(Integer value1, Integer value2) {
            addCriterion("user_password not between", value1, value2, "userPassword");
            return (Criteria) this;
        }

        public Criteria andUserNameIsNull() {
            addCriterion("user_name is null");
            return (Criteria) this;
        }

        public Criteria andUserNameIsNotNull() {
            addCriterion("user_name is not null");
            return (Criteria) this;
        }

        public Criteria andUserNameEqualTo(String value) {
            addCriterion("user_name =", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotEqualTo(String value) {
            addCriterion("user_name <>", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameGreaterThan(String value) {
            addCriterion("user_name >", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameGreaterThanOrEqualTo(String value) {
            addCriterion("user_name >=", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLessThan(String value) {
            addCriterion("user_name <", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLessThanOrEqualTo(String value) {
            addCriterion("user_name <=", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameLike(String value) {
            addCriterion("user_name like", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotLike(String value) {
            addCriterion("user_name not like", value, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameIn(List<String> values) {
            addCriterion("user_name in", values, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotIn(List<String> values) {
            addCriterion("user_name not in", values, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameBetween(String value1, String value2) {
            addCriterion("user_name between", value1, value2, "userName");
            return (Criteria) this;
        }

        public Criteria andUserNameNotBetween(String value1, String value2) {
            addCriterion("user_name not between", value1, value2, "userName");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberIsNull() {
            addCriterion("user_job_number is null");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberIsNotNull() {
            addCriterion("user_job_number is not null");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberEqualTo(String value) {
            addCriterion("user_job_number =", value, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberNotEqualTo(String value) {
            addCriterion("user_job_number <>", value, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberGreaterThan(String value) {
            addCriterion("user_job_number >", value, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberGreaterThanOrEqualTo(String value) {
            addCriterion("user_job_number >=", value, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberLessThan(String value) {
            addCriterion("user_job_number <", value, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberLessThanOrEqualTo(String value) {
            addCriterion("user_job_number <=", value, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberLike(String value) {
            addCriterion("user_job_number like", value, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberNotLike(String value) {
            addCriterion("user_job_number not like", value, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberIn(List<String> values) {
            addCriterion("user_job_number in", values, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberNotIn(List<String> values) {
            addCriterion("user_job_number not in", values, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberBetween(String value1, String value2) {
            addCriterion("user_job_number between", value1, value2, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobNumberNotBetween(String value1, String value2) {
            addCriterion("user_job_number not between", value1, value2, "userJobNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberIsNull() {
            addCriterion("user_department_number is null");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberIsNotNull() {
            addCriterion("user_department_number is not null");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberEqualTo(Integer value) {
            addCriterion("user_department_number =", value, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberNotEqualTo(Integer value) {
            addCriterion("user_department_number <>", value, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberGreaterThan(Integer value) {
            addCriterion("user_department_number >", value, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("user_department_number >=", value, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberLessThan(Integer value) {
            addCriterion("user_department_number <", value, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberLessThanOrEqualTo(Integer value) {
            addCriterion("user_department_number <=", value, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberIn(List<Integer> values) {
            addCriterion("user_department_number in", values, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberNotIn(List<Integer> values) {
            addCriterion("user_department_number not in", values, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberBetween(Integer value1, Integer value2) {
            addCriterion("user_department_number between", value1, value2, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserDepartmentNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("user_department_number not between", value1, value2, "userDepartmentNumber");
            return (Criteria) this;
        }

        public Criteria andUserJobIsNull() {
            addCriterion("user_job is null");
            return (Criteria) this;
        }

        public Criteria andUserJobIsNotNull() {
            addCriterion("user_job is not null");
            return (Criteria) this;
        }

        public Criteria andUserJobEqualTo(Integer value) {
            addCriterion("user_job =", value, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobNotEqualTo(Integer value) {
            addCriterion("user_job <>", value, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobGreaterThan(Integer value) {
            addCriterion("user_job >", value, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobGreaterThanOrEqualTo(Integer value) {
            addCriterion("user_job >=", value, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobLessThan(Integer value) {
            addCriterion("user_job <", value, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobLessThanOrEqualTo(Integer value) {
            addCriterion("user_job <=", value, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobIn(List<Integer> values) {
            addCriterion("user_job in", values, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobNotIn(List<Integer> values) {
            addCriterion("user_job not in", values, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobBetween(Integer value1, Integer value2) {
            addCriterion("user_job between", value1, value2, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobNotBetween(Integer value1, Integer value2) {
            addCriterion("user_job not between", value1, value2, "userJob");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalIsNull() {
            addCriterion("user_job_leval is null");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalIsNotNull() {
            addCriterion("user_job_leval is not null");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalEqualTo(Integer value) {
            addCriterion("user_job_leval =", value, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalNotEqualTo(Integer value) {
            addCriterion("user_job_leval <>", value, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalGreaterThan(Integer value) {
            addCriterion("user_job_leval >", value, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalGreaterThanOrEqualTo(Integer value) {
            addCriterion("user_job_leval >=", value, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalLessThan(Integer value) {
            addCriterion("user_job_leval <", value, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalLessThanOrEqualTo(Integer value) {
            addCriterion("user_job_leval <=", value, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalIn(List<Integer> values) {
            addCriterion("user_job_leval in", values, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalNotIn(List<Integer> values) {
            addCriterion("user_job_leval not in", values, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalBetween(Integer value1, Integer value2) {
            addCriterion("user_job_leval between", value1, value2, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobLevalNotBetween(Integer value1, Integer value2) {
            addCriterion("user_job_leval not between", value1, value2, "userJobLeval");
            return (Criteria) this;
        }

        public Criteria andUserJobStateIsNull() {
            addCriterion("user_job_state is null");
            return (Criteria) this;
        }

        public Criteria andUserJobStateIsNotNull() {
            addCriterion("user_job_state is not null");
            return (Criteria) this;
        }

        public Criteria andUserJobStateEqualTo(String value) {
            addCriterion("user_job_state =", value, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateNotEqualTo(String value) {
            addCriterion("user_job_state <>", value, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateGreaterThan(String value) {
            addCriterion("user_job_state >", value, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateGreaterThanOrEqualTo(String value) {
            addCriterion("user_job_state >=", value, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateLessThan(String value) {
            addCriterion("user_job_state <", value, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateLessThanOrEqualTo(String value) {
            addCriterion("user_job_state <=", value, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateLike(String value) {
            addCriterion("user_job_state like", value, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateNotLike(String value) {
            addCriterion("user_job_state not like", value, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateIn(List<String> values) {
            addCriterion("user_job_state in", values, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateNotIn(List<String> values) {
            addCriterion("user_job_state not in", values, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateBetween(String value1, String value2) {
            addCriterion("user_job_state between", value1, value2, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserJobStateNotBetween(String value1, String value2) {
            addCriterion("user_job_state not between", value1, value2, "userJobState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateIsNull() {
            addCriterion("user_inclass_state is null");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateIsNotNull() {
            addCriterion("user_inclass_state is not null");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateEqualTo(String value) {
            addCriterion("user_inclass_state =", value, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateNotEqualTo(String value) {
            addCriterion("user_inclass_state <>", value, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateGreaterThan(String value) {
            addCriterion("user_inclass_state >", value, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateGreaterThanOrEqualTo(String value) {
            addCriterion("user_inclass_state >=", value, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateLessThan(String value) {
            addCriterion("user_inclass_state <", value, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateLessThanOrEqualTo(String value) {
            addCriterion("user_inclass_state <=", value, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateLike(String value) {
            addCriterion("user_inclass_state like", value, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateNotLike(String value) {
            addCriterion("user_inclass_state not like", value, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateIn(List<String> values) {
            addCriterion("user_inclass_state in", values, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateNotIn(List<String> values) {
            addCriterion("user_inclass_state not in", values, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateBetween(String value1, String value2) {
            addCriterion("user_inclass_state between", value1, value2, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserInclassStateNotBetween(String value1, String value2) {
            addCriterion("user_inclass_state not between", value1, value2, "userInclassState");
            return (Criteria) this;
        }

        public Criteria andUserSexIsNull() {
            addCriterion("user_sex is null");
            return (Criteria) this;
        }

        public Criteria andUserSexIsNotNull() {
            addCriterion("user_sex is not null");
            return (Criteria) this;
        }

        public Criteria andUserSexEqualTo(String value) {
            addCriterion("user_sex =", value, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexNotEqualTo(String value) {
            addCriterion("user_sex <>", value, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexGreaterThan(String value) {
            addCriterion("user_sex >", value, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexGreaterThanOrEqualTo(String value) {
            addCriterion("user_sex >=", value, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexLessThan(String value) {
            addCriterion("user_sex <", value, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexLessThanOrEqualTo(String value) {
            addCriterion("user_sex <=", value, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexLike(String value) {
            addCriterion("user_sex like", value, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexNotLike(String value) {
            addCriterion("user_sex not like", value, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexIn(List<String> values) {
            addCriterion("user_sex in", values, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexNotIn(List<String> values) {
            addCriterion("user_sex not in", values, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexBetween(String value1, String value2) {
            addCriterion("user_sex between", value1, value2, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserSexNotBetween(String value1, String value2) {
            addCriterion("user_sex not between", value1, value2, "userSex");
            return (Criteria) this;
        }

        public Criteria andUserEducationIsNull() {
            addCriterion("user_education is null");
            return (Criteria) this;
        }

        public Criteria andUserEducationIsNotNull() {
            addCriterion("user_education is not null");
            return (Criteria) this;
        }

        public Criteria andUserEducationEqualTo(String value) {
            addCriterion("user_education =", value, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationNotEqualTo(String value) {
            addCriterion("user_education <>", value, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationGreaterThan(String value) {
            addCriterion("user_education >", value, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationGreaterThanOrEqualTo(String value) {
            addCriterion("user_education >=", value, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationLessThan(String value) {
            addCriterion("user_education <", value, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationLessThanOrEqualTo(String value) {
            addCriterion("user_education <=", value, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationLike(String value) {
            addCriterion("user_education like", value, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationNotLike(String value) {
            addCriterion("user_education not like", value, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationIn(List<String> values) {
            addCriterion("user_education in", values, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationNotIn(List<String> values) {
            addCriterion("user_education not in", values, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationBetween(String value1, String value2) {
            addCriterion("user_education between", value1, value2, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserEducationNotBetween(String value1, String value2) {
            addCriterion("user_education not between", value1, value2, "userEducation");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayIsNull() {
            addCriterion("user_birthday is null");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayIsNotNull() {
            addCriterion("user_birthday is not null");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayEqualTo(Date value) {
            addCriterionForJDBCDate("user_birthday =", value, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayNotEqualTo(Date value) {
            addCriterionForJDBCDate("user_birthday <>", value, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayGreaterThan(Date value) {
            addCriterionForJDBCDate("user_birthday >", value, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("user_birthday >=", value, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayLessThan(Date value) {
            addCriterionForJDBCDate("user_birthday <", value, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("user_birthday <=", value, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayIn(List<Date> values) {
            addCriterionForJDBCDate("user_birthday in", values, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayNotIn(List<Date> values) {
            addCriterionForJDBCDate("user_birthday not in", values, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("user_birthday between", value1, value2, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserBirthdayNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("user_birthday not between", value1, value2, "userBirthday");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeIsNull() {
            addCriterion("user_mountguard_time is null");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeIsNotNull() {
            addCriterion("user_mountguard_time is not null");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeEqualTo(Date value) {
            addCriterionForJDBCDate("user_mountguard_time =", value, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeNotEqualTo(Date value) {
            addCriterionForJDBCDate("user_mountguard_time <>", value, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeGreaterThan(Date value) {
            addCriterionForJDBCDate("user_mountguard_time >", value, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("user_mountguard_time >=", value, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeLessThan(Date value) {
            addCriterionForJDBCDate("user_mountguard_time <", value, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("user_mountguard_time <=", value, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeIn(List<Date> values) {
            addCriterionForJDBCDate("user_mountguard_time in", values, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeNotIn(List<Date> values) {
            addCriterionForJDBCDate("user_mountguard_time not in", values, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("user_mountguard_time between", value1, value2, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserMountguardTimeNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("user_mountguard_time not between", value1, value2, "userMountguardTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeIsNull() {
            addCriterion("user_bedemobilized_time is null");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeIsNotNull() {
            addCriterion("user_bedemobilized_time is not null");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeEqualTo(Date value) {
            addCriterionForJDBCDate("user_bedemobilized_time =", value, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeNotEqualTo(Date value) {
            addCriterionForJDBCDate("user_bedemobilized_time <>", value, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeGreaterThan(Date value) {
            addCriterionForJDBCDate("user_bedemobilized_time >", value, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("user_bedemobilized_time >=", value, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeLessThan(Date value) {
            addCriterionForJDBCDate("user_bedemobilized_time <", value, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("user_bedemobilized_time <=", value, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeIn(List<Date> values) {
            addCriterionForJDBCDate("user_bedemobilized_time in", values, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeNotIn(List<Date> values) {
            addCriterionForJDBCDate("user_bedemobilized_time not in", values, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("user_bedemobilized_time between", value1, value2, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserBedemobilizedTimeNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("user_bedemobilized_time not between", value1, value2, "userBedemobilizedTime");
            return (Criteria) this;
        }

        public Criteria andUserMobIsNull() {
            addCriterion("user_mob is null");
            return (Criteria) this;
        }

        public Criteria andUserMobIsNotNull() {
            addCriterion("user_mob is not null");
            return (Criteria) this;
        }

        public Criteria andUserMobEqualTo(String value) {
            addCriterion("user_mob =", value, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobNotEqualTo(String value) {
            addCriterion("user_mob <>", value, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobGreaterThan(String value) {
            addCriterion("user_mob >", value, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobGreaterThanOrEqualTo(String value) {
            addCriterion("user_mob >=", value, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobLessThan(String value) {
            addCriterion("user_mob <", value, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobLessThanOrEqualTo(String value) {
            addCriterion("user_mob <=", value, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobLike(String value) {
            addCriterion("user_mob like", value, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobNotLike(String value) {
            addCriterion("user_mob not like", value, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobIn(List<String> values) {
            addCriterion("user_mob in", values, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobNotIn(List<String> values) {
            addCriterion("user_mob not in", values, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobBetween(String value1, String value2) {
            addCriterion("user_mob between", value1, value2, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserMobNotBetween(String value1, String value2) {
            addCriterion("user_mob not between", value1, value2, "userMob");
            return (Criteria) this;
        }

        public Criteria andUserAddressIsNull() {
            addCriterion("user_address is null");
            return (Criteria) this;
        }

        public Criteria andUserAddressIsNotNull() {
            addCriterion("user_address is not null");
            return (Criteria) this;
        }

        public Criteria andUserAddressEqualTo(String value) {
            addCriterion("user_address =", value, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressNotEqualTo(String value) {
            addCriterion("user_address <>", value, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressGreaterThan(String value) {
            addCriterion("user_address >", value, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressGreaterThanOrEqualTo(String value) {
            addCriterion("user_address >=", value, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressLessThan(String value) {
            addCriterion("user_address <", value, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressLessThanOrEqualTo(String value) {
            addCriterion("user_address <=", value, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressLike(String value) {
            addCriterion("user_address like", value, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressNotLike(String value) {
            addCriterion("user_address not like", value, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressIn(List<String> values) {
            addCriterion("user_address in", values, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressNotIn(List<String> values) {
            addCriterion("user_address not in", values, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressBetween(String value1, String value2) {
            addCriterion("user_address between", value1, value2, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserAddressNotBetween(String value1, String value2) {
            addCriterion("user_address not between", value1, value2, "userAddress");
            return (Criteria) this;
        }

        public Criteria andUserRemarksIsNull() {
            addCriterion("user_remarks is null");
            return (Criteria) this;
        }

        public Criteria andUserRemarksIsNotNull() {
            addCriterion("user_remarks is not null");
            return (Criteria) this;
        }

        public Criteria andUserRemarksEqualTo(String value) {
            addCriterion("user_remarks =", value, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksNotEqualTo(String value) {
            addCriterion("user_remarks <>", value, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksGreaterThan(String value) {
            addCriterion("user_remarks >", value, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksGreaterThanOrEqualTo(String value) {
            addCriterion("user_remarks >=", value, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksLessThan(String value) {
            addCriterion("user_remarks <", value, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksLessThanOrEqualTo(String value) {
            addCriterion("user_remarks <=", value, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksLike(String value) {
            addCriterion("user_remarks like", value, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksNotLike(String value) {
            addCriterion("user_remarks not like", value, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksIn(List<String> values) {
            addCriterion("user_remarks in", values, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksNotIn(List<String> values) {
            addCriterion("user_remarks not in", values, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksBetween(String value1, String value2) {
            addCriterion("user_remarks between", value1, value2, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andUserRemarksNotBetween(String value1, String value2) {
            addCriterion("user_remarks not between", value1, value2, "userRemarks");
            return (Criteria) this;
        }

        public Criteria andEmailIsNull() {
            addCriterion("email is null");
            return (Criteria) this;
        }

        public Criteria andEmailIsNotNull() {
            addCriterion("email is not null");
            return (Criteria) this;
        }

        public Criteria andEmailEqualTo(String value) {
            addCriterion("email =", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotEqualTo(String value) {
            addCriterion("email <>", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThan(String value) {
            addCriterion("email >", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThanOrEqualTo(String value) {
            addCriterion("email >=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThan(String value) {
            addCriterion("email <", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLessThanOrEqualTo(String value) {
            addCriterion("email <=", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailLike(String value) {
            addCriterion("email like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotLike(String value) {
            addCriterion("email not like", value, "email");
            return (Criteria) this;
        }

        public Criteria andEmailIn(List<String> values) {
            addCriterion("email in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotIn(List<String> values) {
            addCriterion("email not in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailBetween(String value1, String value2) {
            addCriterion("email between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andEmailNotBetween(String value1, String value2) {
            addCriterion("email not between", value1, value2, "email");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}